home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Celestin Apprentice 7
/
Apprentice-Release7.iso
/
Environments
/
MacMETH 3.2.4
/
Examples
/
In.MOD
< prev
next >
Wrap
Text File
|
1996-06-20
|
1KB
|
57 lines
IMPLEMENTATION MODULE In;
IMPORT InOut;
PROCEDURE Open;
BEGIN
InOut.WriteString("Please type the name of the input file,"); InOut.WriteLn;
InOut.WriteString("or press TAB to choose it interactively."); InOut.WriteLn;
InOut.OpenInput(""); Done := InOut.Done
END Open;
PROCEDURE Char(VAR ch: CHAR);
BEGIN
IF Done THEN InOut.Read(ch); Done := Done & InOut.Done END
END Char;
PROCEDURE Int(VAR p: INTEGER);
BEGIN IF Done THEN InOut.ReadInt(p); Done := Done & InOut.Done END
END Int;
PROCEDURE LongInt(VAR i: LONGINT);
BEGIN
IF Done THEN InOut.ReadLongInt(i); Done := Done & InOut.Done END
END LongInt;
PROCEDURE Real(VAR p: REAL);
BEGIN IF Done THEN InOut.ReadReal(p); Done := Done & InOut.Done END
END Real;
PROCEDURE LongReal(VAR p: LONGREAL);
BEGIN
IF Done THEN InOut.ReadLongReal(p); Done := Done & InOut.Done END
END LongReal;
PROCEDURE Name(VAR nme: ARRAY OF CHAR);
BEGIN
IF Done THEN InOut.ReadString(nme); Done := Done & InOut.Done END
END Name;
PROCEDURE String(VAR str: ARRAY OF CHAR);
CONST CR = 15C; NUL = 0C;
VAR ch: CHAR; j: INTEGER;
BEGIN
IF Done THEN
REPEAT Char(ch) UNTIL ((ch # " ") & (ch # CR)) OR ~Done;
j := 0;
WHILE Done & (ch # " ") & (ch # CR) DO
IF j < SIZE(str) - 1 THEN str[j] := ch; INC(j) END;
Char(ch)
END;
str[j] := NUL; Done := j # 0
END
END String;
BEGIN Done := TRUE
END In.